The aforesaid problems have been solved within the telecommunication field, for instance in the telephone system AXE 10 sold by the Swedish company Ericson, in that at the construction stage of the telephone stations of the system, the system designers have prepared each device/telephone station for the connection of predetermined types of sub-functions that the designers anticipate will be required in the future. This preparation involves the construction of separate interfaces, which again involves adding predetermined types of futuristic sub-functions to the device. It is endeavored to make the known interfaces that are prepared for the addition of predetermined types of sub-functions as general as possible within the framework of the type of sub-functions concerned.
However, it is difficult to anticipate all conceivable future sub-functions which do not exist at present in the construction stage of a device.
Problems occur when a new sub-function that is to be designed is of a type for which the device has not been prepared. For instance, it is necessary to determine whether or not the new sub-function can be combined with the existing sub-functions of the device, and it is also necessary to be able to connect the new sub-function to the device.
When determining whether or not the new sub-function can be combined with existing sub-functions, it is necessary to determine the function or performance of the device as a whole and also to determine the various functions or performances of the individual, existing sub-functions and also the function of the new sub-function. Since the device is complex, an analysis of this nature will often be extremely comprehensive and difficult to carry out, even should several designers cooperate with one another to this end. Connection of the new sub-function to the existing device is problematic, because no prepared interface is available. It may even be necessary to redesign the device to suit the new sub-function, and it is possible that some interface in the device must be redesigned and made more general in order for the new sub-function to be connected. It may also necessitate the creation of a totally new interface. Such reconstructions and changes may result in errors and faults that are liable to influence the performance of the device.
Instead of requiring the new sub-function to be combinable with all earlier, existing sub-functions, the designer may elect to make the new sub-function combinable with solely some of the existing sub-functions. Although this solution may satisfy a specific market on which the device with the new sub-function shall be used, the solution is not general to all other devices on other markets. Because the new sub-function can only be combined with only certain, but not all, existing sub-functions, this solution impairs the possibility of future additions of newly designed sub-functions.
A further problem related to devices of the kind described in the introduction resides in the conflict that arises when two sub-functions wish to perform simultaneously two different state changes which are not mutually compatible. In the telecommunication field, this problem is referred to as feature interaction or feature interference. The following examples from the field of telephony illustrate a typical case of call to two different numbers. Two sub-functions are involved in the conflict, namely "diversion follow-me" and "diversion-on-busy".
Diversion follow-me involves a call to the actual telephone number of a subscriber which is redirected to another number specified by the subscriber. Diversion-on-busy signifies that when the subscriber to which a call is directed is engaged on the telephone the call is diverted to another, predetermined telephone numbers. A subscriber can subscribe to one or several sub-functions. The telephone network operator then connects the corresponding sub-function or sub-functions to the subscriber. The subscriber can then activate those sub-functions to which he subscribes, for instance by dialling or keying on the keypad of the telephone a number/sign combination which is unique to each sub-function. Correspondingly, the subscriber can deactivate or disengage an activated sub-function, by dialling or keying on the telephone keypad a number/sign combination which is unique for deactivating each sub-function. Assume that a subscriber, hereinafter called B, has the home telephone number 123456, and that the subscriber has the sub-functions "diversion follow-me" and "diversion-on-busy" connected. When the subscriber B moves into his/her weekend cottage, for instance, he/she may wish all telephone calls directed to his/her home telephone number to be diverted to his/her weekend cottage and consequently activates the "diversion follow-me" sub-function and gives the telephone number to which the call shall be diverted, in this case the telephone number to the weekend cottage, for instance 123789. When the subscriber leaves home in order to go to work, he/she may wish to ensure for instance that an expected important call will be accepted even though the home telephone may be engaged. Subscriber B then activates the sub-function "diversion-on-busy", and gives the telephone number to which the call shall be diverted, in this case subscriber B's work telephone number, for instance 232323. Both of the sub-functions "diversion follow-me" and "diversion-on-busy" operate in the manner desired when they are each activated individually. Assume, however, that the subscriber B has both sub-functions activated at one and the same time. In this case, when an external party calls subscriber B on B's home telephone number and the home telephone is busy, the traffic system is unable to decide whether the call shall be redirected to the subscriber's work place or to the subscriber's weekend cottage.